package cn.b.sky.mes.andon.dao;

import java.util.List;

import cn.b.sky.mes.andon.model.Andon;
import cn.b.sky.mes.andon.model.AndonGroup;
import cn.b.sky.mes.andon.model.AndonGroupAssign;

public interface AndonGroupAssignDao {

  /**
   * 
   * <strong>Title : insertAndonGroupAssign<br></strong>
   * <strong>Description : </strong>保存按灯组关系<br> 
   * <strong>Create on : 2016年10月17日 上午9:37:33<br></strong>
   * <p>
   * @param andonGroupAssign
   * void
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void insertAndonGroupAssign(AndonGroupAssign andonGroupAssign);

  /**
   * 
   * <strong>Title : updateAndonGroupAssign<br></strong>
   * <strong>Description : </strong>更新按灯组关系<br> 
   * <strong>Create on : 2016年10月17日 上午9:37:45<br></strong>
   * <p>
   * @param andonGroupAssign
   * void
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void updateAndonGroupAssign(AndonGroupAssign andonGroupAssign);

  /**
   * 
   * <strong>Title : deleteAndonGroupAssign<br></strong>
   * <strong>Description : </strong>删除按灯组关系<br> 
   * <strong>Create on : 2016年10月17日 上午9:39:01<br></strong>
   * <p>
   * @param andonGroupAssign
   * void
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void deleteAndonGroupAssign(AndonGroupAssign andonGroupAssign);

  /**
   * 
   * <strong>Title : batchDeleteAndonGroupAssigns<br></strong>
   * <strong>Description : </strong>删除整个组的关系<br> 
   * <strong>Create on : 2016年10月17日 上午9:45:46<br></strong>
   * <p>
   * @param group
   * void
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void batchDeleteAndonGroupAssigns(AndonGroup group);

  /**
   * 
   * <strong>Title : getAndonGroupAssignsByGroup<br></strong>
   * <strong>Description : </strong>获取按灯组关系<br> 
   * <strong>Create on : 2016年10月17日 上午9:48:32<br></strong>
   * <p>
   * @param group
   * @return
   * List<AndonGroupAssign>
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  List<AndonGroupAssign> getAndonGroupAssignsByGroup(AndonGroup group);

  /**
   * 
   * <strong>Title : deleteGroupAssignByAndon<br></strong>
   * <strong>Description : </strong>删除ANDON的所有分组关系<br> 
   * <strong>Create on : 2016年10月20日 上午11:27:02<br></strong>
   * <p>
   * @param andon
   * void
   * @throws 
   * @author dapeng.li<br>
   * @version <strong>v1.0.0</strong><br>
   * <br>
   * <strong>修改历史:</strong><br>
   * 修改人 | 修改日期 | 修改描述<br>
   * -------------------------------------------<br>
   * <br>
   * <br>
   */
  void deleteGroupAssignsByAndon(Andon andon);

}
